/**
 * AI API相关类型定义
 */

// 从entityExtractor.ts导入EntityType
import { EntityType } from '../ai/entityExtractor.ts';

// 聊天消息类型定义
export interface ChatMessage {
    id?: string;
    role: 'user' | 'assistant' | 'system';
    content: string;
}

// API响应类型
export interface AIResponse {
    success: boolean;
    response?: string;
    content?: string;
    error?: string;
}

// API请求选项
export interface AIRequestOptions {
    maxTokens?: number;
    temperature?: number;
    model?: string;
    pinnedMessages?: number[];
    streamCallback?: (text: string) => void;
}

// 重新导出EntityType以保持兼容性
export { EntityType };

// 使用与entityExtractor.ts相同的Entity接口定义
export interface Entity {
    text: string;            // 实体文本
    type: EntityType;        // 实体类型
    importance: number;      // 重要性评分 (0-10)
    frequency: number;       // 出现频率
    lastMentionedIndex: number; // 最后一次被提及的消息索引
    relatedEntities?: string[]; // 相关实体
} 